Skip to content

Fix Sendable data-race warnings in Publication Services using internal actor caching#769

Draft
stevenzeck wants to merge 6 commits intoreadium:swift6from
stevenzeck:refactor/services
Draft

Fix Sendable data-race warnings in Publication Services using internal actor caching#769
stevenzeck wants to merge 6 commits intoreadium:swift6from
stevenzeck:refactor/services

Conversation

@stevenzeck
Copy link
Copy Markdown
Contributor

@stevenzeck stevenzeck commented Apr 9, 2026

Public API Breaking Changes

  • GeneratedCoverService.init(makeCover:): The makeCover closure parameter is now @Sendable.
  • GeneratedCoverService.makeFactory(makeCover:): Both the makeCover input closure and the returned factory closure are now @Sendable.
  • Service Factories: The makeFactory methods for the following services now return @Sendable closures to ensure thread-safe publication initialization:
    • GeneratedCoverService
    • PerResourcePositionsService
    • InMemoryPositionsService
    • PDFPositionsService
  • AudioLocatorService.init(publication:): Now explicitly requires the override keyword.

Related to #758.

@mickael-menu mickael-menu changed the base branch from develop to swift6 April 9, 2026 11:16
@mickael-menu mickael-menu marked this pull request as draft April 17, 2026 15:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant